int initUser_simple(int userId, unsigned char* pub, int pubLen, unsigned char* prv, int privLen, unsigned
char* dec, int decLen, unsigned char * det, int detKeyLen);

int user_initDiscreteLogMap(int max, int streamId, kpabe_pub_t* pub); 

int initUser_slidingWindow_Aggregate1(int userId, unsigned char* pub, int pubLen, unsigned char* prv, int privLen,
unsigned char* dec, int decLen, int windowSize, unsigned char *windowKey);

int decrypt_simple(int userId, unsigned char* cipher, unsigned char *originalCipher);

int decrypt_slidingWindow_Aggregate1(int userId, unsigned char* cipher, unsigned char *originalCipher);

int computeJoinKey(int userId1, int userId2, unsigned char **cipher1, int *len1, unsigned
char **cipher2, int *len2);
